package com.ssyan.prototype;

/**
 * @author ssyan
 * @Description 传统方式：
 *              优点：比较好理解，简单
 *              缺点：1）创建新的对象时，总是需要重新获取原始对象的属性，如果创建的对象比较复杂时，效率较低
 *                  2）总是需要重新初始化对象，而不是动态地获得对象运行时的状态，不够灵活
 *                  3）改进的思路分析
 * @create 2021/8/28 1:09
 * @Version 1.0
 */
public class Client {

    public static void main(String[] args) {
        //传统的方法
        Sheep sheep = new Sheep("tom", 1, "白色");
        Sheep sheep2 = new Sheep(sheep.getName(), sheep.getAge(), sheep.getColor());
        Sheep sheep3= new Sheep(sheep.getName(), sheep.getAge(), sheep.getColor());
        Sheep sheep4 = new Sheep(sheep.getName(), sheep.getAge(), sheep.getColor());
        Sheep sheep5 = new Sheep(sheep.getName(), sheep.getAge(), sheep.getColor());

        //...
        System.out.println(sheep);
        System.out.println(sheep2);
        System.out.println(sheep3);
        System.out.println(sheep4);
        System.out.println(sheep5);
    }
}
